    enum SunkenTreasureSubGameData
    {
		SGDIDX_FEATURE_MULTIPLIER = SGDIDX_END_BASE_SUB_GAME_DATA_RESERVED_RANGE,
		SGDIDX_BONUS_GAME_RESULT_INDEX,
		SGDIDX_TREASURE_PICKS_AWARDED,
		SGDIDX_CURRENT_TREASURE_INDEX,
		SCGIDX_TREASURE_PICK_SELECTED_MASK,
		SGDIDX_TREASURE_PICK_POSITION_1,
		SGDIDX_TREASURE_PICK_WIN_TYPE_1,
		SGDIDX_TREASURE_PICK_WIN_AMOUNT_1,
		SGDIDX_TREASURE_PICK_JEWEL_TYPE_1,
		SGDIDX_TREASURE_PICK_POSITION_2,
		SGDIDX_TREASURE_PICK_WIN_TYPE_2,
		SGDIDX_TREASURE_PICK_WIN_AMOUNT_2,
		SGDIDX_TREASURE_PICK_JEWEL_TYPE_2,
		SGDIDX_TREASURE_PICK_POSITION_3,
		SGDIDX_TREASURE_PICK_WIN_TYPE_3,
		SGDIDX_TREASURE_PICK_WIN_AMOUNT_3,
		SGDIDX_TREASURE_PICK_JEWEL_TYPE_3,
		SGDIDX_TREASURE_PICK_POSITION_4,
		SGDIDX_TREASURE_PICK_WIN_TYPE_4,
		SGDIDX_TREASURE_PICK_WIN_AMOUNT_4,
		SGDIDX_TREASURE_PICK_JEWEL_TYPE_4,
		SGDIDX_TREASURE_PICK_POSITION_5,
		SGDIDX_TREASURE_PICK_WIN_TYPE_5,
		SGDIDX_TREASURE_PICK_WIN_AMOUNT_5,
		SGDIDX_TREASURE_PICK_JEWEL_TYPE_5,
		SGDIDX_JEWEL_PICKS_AWARDED,
		SGDIDX_CURRENT_JEWEL_INDEX,
		SCGIDX_JEWEL_PICK_SELECTED_MASK,
		SGDIDX_JEWEL_PICK_POSITION_1,
		SGDIDX_JEWEL_PICK_WIN_AMOUNT_1,
		SGDIDX_JEWEL_PICK_POSITION_2,
		SGDIDX_JEWEL_PICK_WIN_AMOUNT_2,
		SGDIDX_JEWEL_PICK_POSITION_3,
		SGDIDX_JEWEL_PICK_WIN_AMOUNT_3,
		SGDIDX_JEWEL_PICK_POSITION_4,
		SGDIDX_JEWEL_PICK_WIN_AMOUNT_4,
		SGDIDX_JEWEL_PICK_POSITION_5,
		SGDIDX_JEWEL_PICK_WIN_AMOUNT_5,
	};

    enum ClassConstants
    {
        // Game Modes
        MODE_NORMAL = 0,
        MODE_FREE_SPIN = 1,
		NUM_GAME_MODES,

		// Bonus Game States
		BONUS_GAME_INACTIVE = 0,
		BONUS_GAME_ACTIVE = 1,

		// Bonus Game
		BONUS_GAME_NONE = 0,
		BONUS_GAME_TREASURE_DIVE = 1,
		BONUS_GAME_JEWEL_PICK = 2,

		// Win Types
		WIN_TYPE_NONE = 0,
		WIN_TYPE_MULITPLIER_2,
		WIN_TYPE_MULITPLIER_3,
		WIN_TYPE_MULITPLIER_5,
		WIN_TYPE_MULITPLIER_10,
		WIN_TYPE_FREE_GAMES,
		
		JEWEL_TYPE_NONE = 0,
		JEWEL_TYPE_BLUE,
		JEWEL_TYPE_RED,

        // Notes
		NOTE_DIVER_SUBSTITUTION = 0,
		NOTE_FREE_SPIN_MULTIPLIER = 1,

        // Multipliers
        MULTIPLIER_DIVER_SUBSTITUTION = 2,
		MULTIPLIER_FREE_SPIN = 3,

		// Treasure Dives
		PICKS_FOR_THREE_SHIPS = 3,
		PICKS_FOR_FOUR_SHIPS = 4,
		PICKS_FOR_FIVE_SHIPS = 5,

		INITIAL_FREE_GAME_AWARD = 0,
		WIN_FREE_GAME_AWARD = 5,

		// Other Constants
		MAX_TREASURE_PICKS = 5,
		MAX_JEWEL_PICKS = 5,
		MAX_POSITIONS = 8,

		// Probability Table
		PT_BONUS_PRIZE_AWARDED_PER_PICK_VALUE = 0,
		PT_BONUS_CHANCE_TO_REVEAL_JEWEL_VALUE = 1,
		PT_BONUS_BLUE_JEWEL_PRIZES_VALUE = 2,
		PT_BONUS_RED_JEWEL_PRIZES_VALUE = 3
    };

    enum SpinResult
    {
		EVT_LOSER,
		EVT_SCATTER_NEAR_MISS,
		EVT_FEATURE_NEAR_MISS,
		EVT_TWO_SHIP,
		EVT_THREE_SHIP,
		EVT_FOUR_SHIP,
		EVT_FIVE_SHIP,
		EVT_ONE_TREASURE,
		EVT_TWO_ANCHOR,
		EVT_TWO_CORAL,
		EVT_TWO_FISH,
		EVT_TWO_TREASURE,
		EVT_THREE_NINE,
		EVT_THREE_TEN,
		EVT_THREE_JACK,
		EVT_THREE_QUEEN,
		EVT_THREE_KING,
		EVT_THREE_ACE,
		EVT_THREE_ANCHOR,
		EVT_THREE_CORAL,
		EVT_FOUR_NINE,
		EVT_FOUR_TEN,
		EVT_FOUR_JACK,
		EVT_FOUR_QUEEN,
		EVT_FOUR_KING,
		EVT_FOUR_ACE,
		EVT_THREE_FISH,
		EVT_FIVE_NINE,
		EVT_FIVE_TEN,
		EVT_THREE_TREASURE,
		EVT_FOUR_ANCHOR,
		EVT_FOUR_CORAL,
		EVT_FIVE_JACK,
		EVT_FIVE_QUEEN,
		EVT_FIVE_KING,
		EVT_FIVE_ACE,
		EVT_FOUR_FISH,
		EVT_FIVE_ANCHOR,
		EVT_FIVE_CORAL,
		EVT_FOUR_TREASURE,
		EVT_FIVE_FISH,
		EVT_FIVE_TREASURE,
		EVT_TREASURE_DIVE_FEATURE,
		EVT_JEWEL_PICK_FEATURE,
		EVT_FREE_GAME_FEATURE,
		EVT_RANDOM_PROGRESSIVE_WINNER,
		NUM_VALID_SPIN_RESULTS,
		EVT_INVALID,

#ifdef DEBUG_KNOWNSPINS
		EVT_DEBUG_DATA_SET_END,

		EVT_DEBUG_CUSTOM_STOPS,
        EVT_DEBUG_FOUR_SHIP = EVT_DEBUG_CUSTOM_STOPS,
        EVT_DEBUG_THREE_SHIP,
        EVT_DEBUG_TWO_SHIP,
        EVT_DEBUG_ONE_SHIP,

        EVT_DEBUG_SHIPS_BONUS_MODE,
        EVT_DEBUG_2_TREASURE_3_FISH,
        EVT_DEBUG_2_TREASURE_2_SHIP,
        EVT_DEBUG_2_FISH_DIVER_2_SHIP,
        EVT_DEBUG_2_SHIP_DIVER_2_CORAL,
        EVT_DEBUG_SHIP_3_DIVER_SHIP,
        EVT_DEBUG_2_FISH_3_SHIP,
        EVT_DEBUG_QUEEN_DIVER_QUEEN_DIVER_FISH,
        EVT_DEBUG_3_ANCHOR_2_QUEEN_BONUS_MODE,
        EVT_DEBUG_3_ANCHOR_2_QUEEN,
        EVT_DEBUG_CORAL_DIVER_SHIP_DIVER_SHIP,

		EVT_DEBUG_CUSTOM_FUNCTIONS,
		EVT_DEBUG_FUNCTION_FEATURE_EXIT = EVT_DEBUG_CUSTOM_FUNCTIONS,
		EVT_DEBUG_FUNCTION_SCATTER_ITERATE,
		EVT_DEBUG_FUNCTION_PAY_LINE_ITERATE,
        EVT_DEBUG_FUNCTION_FEATURE_EXIT_WIN,
		
		EVT_DEBUG_MODIFY_NEXT_SPIN_FUNCTIONS,
		EVT_DEBUG_MODIFY_NEXT_SPIN_RANDOM_JACKPOT = EVT_DEBUG_MODIFY_NEXT_SPIN_FUNCTIONS,
        EVT_DEBUG_FUNCTION_SUBSTITUTE,
        EVT_DEBUG_FUNCTION_SUBSTITUTE_2,
        EVT_DEBUG_FUNCTION_FEATURE_PATTERN_1,
        EVT_DEBUG_FUNCTION_FEATURE_PATTERN_2,
        EVT_DEBUG_FUNCTION_FEATURE_PATTERN_3,
        EVT_DEBUG_FUNCTION_FEATURE_PATTERN_4,

#endif
	};

    enum WheelContents 
    {
		ICON_NINE,
		ICON_TEN,
		ICON_JACK,
		ICON_QUEEN,
		ICON_KING,
		ICON_ACE,
		ICON_ANCHOR,
		ICON_CORAL,
		ICON_FISH,
		ICON_TREASURE,
		ICON_SHIP,
		ICON_DIVER,
		NUM_VALID_ICONS,
		ICON_INVALID
    };

